'\" t
.\"
.\" This file and its contents are supplied under the terms of the
.\" Common Development and Distribution License ("CDDL"), version 1.0.
.\" You may only use this file in accordance with the terms of version
.\" 1.0 of the CDDL.
.\"
.\" A full copy of the text of the CDDL should have accompanied this
.\" source.  A copy of the CDDL is also available via the Internet at
.\" http://www.illumos.org/license/CDDL.
.\"
.\"
.\" Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
.\" Copyright 2020 Peter Tribble.
.\"
.TH AUDIOCTL 1 "Feb 8, 2020"
.SH NAME
audioctl - audio device control command line interface
.SH SYNOPSIS
.nf
\fBaudioctl\fR \fBlist-devices\fR
.fi

.LP
.nf
\fBaudioctl\fR \fBshow-device\fR [\fB-v\fR] [\fB-d\fR \fIdevice\fR]
.fi

.LP
.nf
\fBaudioctl\fR \fBshow-control\fR [\fB-v\fR] [\fB-d\fR \fIdevice\fR] [\fIcontrol\fR ...]
.fi

.LP
.nf
\fBaudioctl\fR \fBset-control\fR [\fB-v\fR] [\fB-d\fR \fIdevice\fR] \fIcontrol\fR \fIvalue\fR
.fi

.LP
.nf
\fBaudioctl\fR \fBsave-controls\fR [\fB-d\fR \fIdevice\fR] [\fB-f\fR] \fIfile\fR
.fi

.LP
.nf
\fBaudioctl\fR \fBload-controls\fR [\fB-d\fR \fIdevice\fR] \fIfile\fR
.fi

.LP
.nf
\fBaudioctl\fR \fBhelp\fR
.fi

.SH DESCRIPTION
The \fBaudioctl\fP command is used to control various settings and features
of audio devices, including mixer settings such as playback volume and
record gain.
.SH SUBCOMMANDS
The \fBaudioctl\fR command supports the following subcommands.
.sp
.ne 2
.na
\fBlist-devices\fR
.ad
.sp .6
.RS 4n
List all the audio devices on the system.
.RE

.sp
.ne 2
.na
\fBshow-device\fR [\fB-v\fR] [\fB-d\fR \fIdevice\fR]
.ad
.sp .6
.RS 4n
Display an informational overview of \fIdevice\fR (or the default device if
not specified).  If the \fB-v\fR option is specified, then more detail
will be displayed.
.RE

.sp
.ne 2
.na
\fBshow-control\fR [\fB-v\fR] [\fB-d\fR \fIdevice\fR] [\fBcontrol\fR ... ]
.ad
.sp .6
.RS 4n
Display the control settings for one or more \fIcontrols\fR of a
\fIdevice\fR (or the default device if not specified).  If no \fIcontrol\fR is
specified, then the settings for all controls will be displayed. If
the \fB-v\fR option is specified, then more detail will be displayed.
.RE

.sp
.ne 2
.na
\fBset-control\fR [\fB-v\fR] [\fB-d\fR \fIdevice\fR] \fIcontrol\fR \fIvalue\fR
.ad
.sp .6
.RS 4n
Set the control settings for a \fIcontrol\fR of a \fIdevice\fR (or the
default device if not specified) to \fIvalue\fR.  If the \fB-v\fR
option is specified, then more verbose output be displayed.
.RE

.sp
.ne 2
.na
\fBsave-controls\fR [\fB-f\fR] [\fB-d\fR \fIdevice\fR] \fIfile\fR
.ad
.sp .6
.RS 4n
Save all control settings of the \fIdevice\fR (or the default device if not
specified) to the named \fIfile\fR.  This subcommand will not replace
or modify an existing file unless \fB-f\fR (force) is specified.
.RE

.sp
.ne 2
.na
\fBload-controls\fR [\fB-d\fR \fIdevice\fR] \fIfile\fR
.ad
.sp .6
.RS 4n
Load previously saved control settings from a \fIfile\fR
into a \fIdevice\fR (or all audio devices if not
specified).
.RE

.sp
.ne 2
.na
\fBhelp\fR
.ad
.sp .6
.RS 4n
Display the usage message.
.RE

.SH ENVIRONMENT VARIABLES
.ne 2
.na
\fB\fBAUDIODEV\fR\fR
.ad
.RS 12n
The full path name of the default audio device to use if one
is not specified on the command line.  If this variable is not set,
\fB/dev/audio\fR is used.
.RE

.SH ATTRIBUTES
The \fBaudioctl\fR command and its subcommands are Committed.  The
names of controls, their values, and device names are Uncommitted.
The display output is intended for human consumption, and is Not An
Interface.  The format of the state files used by the
\fBsave-controls\fR and \fBload-controls\fR subcommands is Committed
Private.
.SH SEE ALSO
.BR audioplay (1),
.BR audiorecord (1),
.BR dsp (4I),
.BR mixer (4I)
